/* Returns a GSList of (referenced) widgets encountered while drawing.
*/
-static GList *
+static void
text_renderer_end (GtkTextRenderer *text_renderer)
{
GtkStyleContext *context;
- GList *widgets = text_renderer->widgets;
cairo_restore (text_renderer->cr);
text_renderer->widget = NULL;
text_renderer->cr = NULL;
- text_renderer->widgets = NULL;
-
if (text_renderer->error_color)
{
gdk_rgba_free (text_renderer->error_color);
text_renderer->error_color = NULL;
}
-
- return widgets;
}
static cairo_region_t *
void
gtk_text_layout_draw (GtkTextLayout *layout,
GtkWidget *widget,
- cairo_t *cr,
- GList **widgets)
+ cairo_t *cr)
{
GtkStyleContext *context;
gint offset_y;
gboolean have_selection;
GSList *line_list;
GSList *tmp_list;
- GList *tmp_widgets;
GdkRectangle clip;
g_return_if_fail (GTK_IS_TEXT_LAYOUT (layout));
}
gtk_text_layout_wrap_loop_end (layout);
-
- tmp_widgets = text_renderer_end (text_renderer);
- if (widgets)
- *widgets = tmp_widgets;
- else
- g_list_free_full (tmp_widgets, g_object_unref);
+ text_renderer_end (text_renderer);
g_slist_free (line_list);
}
* widget - Widget to grab some style info from
* cr - Context to render to, matrix set so that (0, 0)
* is the top left of the layout
- * widgets - list of widgets that need exposing
*/
GDK_AVAILABLE_IN_ALL
void gtk_text_layout_draw (GtkTextLayout *layout,
GtkWidget *widget,
- cairo_t *cr,
- GList **widgets);
+ cairo_t *cr);
G_END_DECLS
cr = cairo_create (surface);
- gtk_text_layout_draw (layout, widget, cr, NULL);
+ gtk_text_layout_draw (layout, widget, cr);
cairo_destroy (cr);
g_object_unref (layout);